package edu.zjut.hjg.saas.biz.service;

import java.io.File;
import java.util.List;
import java.util.Map;

import edu.zjut.hjg.saas.biz.model.Activity;
import edu.zjut.hjg.saas.biz.model.Album;
import edu.zjut.hjg.saas.biz.support.Paginated;

public interface ActivityService {
    Activity findById(int id);

    Activity findByIdAndAppId(int id, int appId);

    File create(Activity activity, String oldFileName, String operator);

    void deleteByIdAndAppId(int id, int appId, String operator);

    Paginated<Activity> listByAlbumIdAndAppId(int albumId, int appId, int pageSize, int page);

    Map<Integer, String> getAlbumCoversByAlbumIds(List<Integer> albumIds);

    Map<Integer, String> getAlbumCoversByAlbums(List<Album> albums);

    List<Activity> listByLimitAndAppId(int limit, int appId);

    List<Activity> listByLimit(int limit);

    Paginated<Activity> listAll(int pageSize, int page);
}
